package main

import (
	"github.com/gin-gonic/gin"
	"net/http"
	"path"
)

func main() {
	r := gin.Default()

	r.LoadHTMLFiles("web15_file/index.html")

	r.GET("/index", func(context *gin.Context) {
		context.HTML(http.StatusOK, "index.html", nil)
	})

	r.POST("/upload", func(context *gin.Context) {
		//从请求中读取文件
		f, err := context.FormFile("f1") //和从请求中获取携带的参数一样的
		if err != nil {
			context.JSON(http.StatusBadRequest, gin.H{
				"error": err.Error(),
			})
		} else {
			//将读取到的文件保存在本地（服务端本地）
			//dst := fmt.Sprintf("web15_file/%s", f.Filename)
			dst := path.Join("web15_file/", f.Filename)
			_ = context.SaveUploadedFile(f, dst)
			context.JSON(http.StatusOK, gin.H{
				"status": "OK",
			})
		}
	})

	r.Run(":9090")
}
